
package com.be.beadmin.basicData.service;

import com.be.beadmin.basicData.entity.MaterialInfo;
import com.be.beadmin.basicData.dto.output.MaterialInfoEx;
import com.be.beadmin.basicData.dto.input.MaterialInfoDto;
import com.be.beadmin.basicData.dto.input.MaterialInfoQueryCriteria;
import org.springframework.data.domain.Page;
import com.be.beadmin.common.entity.PageEntity;
import org.springframework.data.domain.Pageable;
import org.springframework.web.multipart.MultipartFile;

import java.util.Map;
import java.util.List;
import java.io.IOException;
import javax.servlet.http.HttpServletResponse;

/**
* @description 服务接口
* @author cms
* @date 2023-12-07
**/
public interface MaterialInfoService {

    /**
    * 分页的查询接口
    * @param pageEntity
    * @return
    */
    Page<MaterialInfoEx> getMaterialInfoByPage(PageEntity pageEntity);

    /**
    * @param materialInfoDto
    */
    void addMaterialInfo(MaterialInfoDto materialInfoDto);

    /**
    * @param materialInfoDto
    */
    void updateMaterialInfo(MaterialInfoDto materialInfoDto);

    /**
    * @param id
    */
    void delMaterialInfo(String id);

    /**
    * 删除多个角色
    * @param ids
    */
    void delMaterialInfos (List<String> ids);

    void uploadMaterialInfo(MultipartFile file) throws IOException;

    MaterialInfo getMaterialInfo(String materialCode);

    void insertMaterialInfo(MaterialInfo materialInfo);

    List<MaterialInfo> getMaterialInfoByMaterialProperty(String materialProperty);

    String getMaterialNameByMaterialCode(String materialCode);

    String getMaterialSpecByMaterialCode(String materialCode);
}